home *** CD-ROM | disk | FTP | other *** search
- 10 ! ********************************************************
- 20 ! Example: Engine Monitor - Level-0 Widgets
- 30 !
- 40 ! This program displays a simulated engine monitor for
- 50 ! a theoretical engine. Torque, pressure, and dwell are
- 60 ! displayed, as well as a Status Log.
- 70 !
- 80 ! ********************************************************
- 90 !
- 100 DIM Buf$[200]
- 110 !
- 120 ! Create the widgets
- 130 !
- 140 ASSIGN @Meter1 TO WIDGET "METER";SET ("X":200,"Y":10,"WIDTH":150,"HEIGHT":175,"TITLE":"Torque","ARC WIDTH":3)
- 150 ASSIGN @Bars1 TO WIDGET "BARS";SET ("X":375,"Y":10,"WIDTH":150,"HEIGHT":250,"TITLE":"Pressure","SHOW LIMITS":0)
- 160 ASSIGN @Dispdwell TO WIDGET "LABEL";SET ("X":200,"Y":200,"WIDTH":150,"HEIGHT":60,"TITLE":"Dwell")
- 170 ASSIGN @Logtext TO WIDGET "PRINTER";SET ("X":200,"Y":275,"WIDTH":325,"HEIGHT":100,"TITLE":"Status Log")
- 180 ASSIGN @Label TO WIDGET "LABEL"
- 190 CONTROL @Label;SET ("X":10,"Y":10,"WIDTH":150,"HEIGHT":25,"TITLE":" Quit ","SYSTEM MENU":"Quit")
- 200 ON EVENT @Label,"SYSTEM MENU" GOTO Finis
- 210 !
- 220 ! Run the widgets for the engine monitor
- 230 !
- 240 Value=50
- 250 Siz=15
- 260 Loop_val: !
- 270 FOR I=1 TO 10000
- 280 !
- 290 IF Value<25 OR Value>=85 THEN Value=50
- 300 Torq=INT(Value+Siz*RND)
- 310 Pres=INT(Value+Siz*RND)
- 320 Dwell=INT(Value+Siz*RND)
- 330 Value=INT(Value+Siz*(RND-.5))
- 340 !
- 350 CONTROL @Meter1;SET ("VALUE":Torq)
- 360 CONTROL @Bars1;SET ("VALUE":Pres)
- 370 CONTROL @Dispdwell;SET ("VALUE":Dwell)
- 380 OUTPUT Buf$ USING "#,K,DDDD,X,DDD,DDD,DDD";"Update #";I,Torq,Pres,Dwell
- 390 CONTROL @Logtext;SET ("APPEND TEXT":Buf$)
- 400 NEXT I
- 410 GOTO Loop_val
- 420 !
- 430 STOP
- 440 Finis: END
-